Transparent Object Proxies for JavaScript (Artifact)
نویسندگان
چکیده
This artifact provides two prototype extensions of the SpiderMonkey JavaScript engine. Both extensions implement alternative designs for transparent proxies that are better suited for use cases such as certain contract wrappers and access restricting membranes. The first prototype extends the proxy handler by an isTransparent trap that regulates the proxy’s transparency. The second prototype implements a new global object TransparentProxy that implements the constructor for transparent proxy objects. 1998 ACM Subject Classification D.3.3 Language Constructs and Features (E.2)
منابع مشابه
Transparent Object Proxies for JavaScript Technical Report
Proxies are the swiss army knives of object adaptation. They introduce a level of indirection to intercept select operations on a target object and divert them as method calls to a handler. Proxies have many uses like implementing access control, enforcing contracts, virtualizing resources. One important question in the design of a proxy API is whether a proxy object should inherit the identity...
متن کاملTransparent object proxies for javascript
Proxies are the swiss army knives of object adaptation. They introduce a level of indirection to intercept select operations on a target object and divert them as method calls to a handler. Proxies have many uses like implementing access control, enforcing contracts, virtualizing resources. One important question in the design of a proxy API is whether a proxy object should inherit the identity...
متن کاملTreatJS: Higher-Order Contracts for JavaScript (Artifact)
TreatJS is a language embedded, higher-order contract system for JavaScript which enforces contracts by run-time monitoring. Beyond providing the standard abstractions for building higher-order contracts (base, function, and object contracts), TreatJS’s novel contributions are its guarantee of non-interfering contract execution, its systematic approach to blame assignment, its support for contr...
متن کاملTrustworthy Proxies - Virtualizing Objects with Invariants
Proxies are a common technique to virtualize objects in object-oriented languages. A proxy is a placeholder object that emulates or wraps another target object. Both the proxy’s representation and behavior may differ substantially from that of its target object. In many OO languages, objects may have language-enforced invariants associated with them. For instance, an object may declare immutabl...
متن کاملA On the design of the ECMAScript Reflection API
We describe in detail the new reflection API of the upcoming Javascript standard. The most prominent feature of this new API is its support for creating proxies: virtual objects that behave as regular objects, but whose entire “meta-object protocol” is implemented in Javascript itself. Next to a detailed description of the API, we describe a more general set of design principles that helped ste...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- DARTS
دوره 1 شماره
صفحات -
تاریخ انتشار 2015